1. Technical Field
The invention relates to the creation of rules for computing systems in a computer environment. More particularly, the invention relates to the creation of rules describing the characteristics of a computing system in a computer environment.
2. Description of the Prior Art
Computing systems that make decisions using rules are typically difficult to maintain during product lifetimes as a product matures and changes. Release engineering has always been concerned with the ability to recreate prior releases of product code bases consistently and accurately.
Generally, the design engineer must create tables of rules by hand. These tables are placed in files. The tables are then modified manually each time a product changes or options are added. Problems commonly occur whenever a table is modified because mistakes are made when another design engineer is unfamiliar with all of the possible options in a product and makes the modifications. Systems crash in the field because of improper characteristics that were defined in a product and not discovered before shipping.
Languages such as C, C++, and Postscript are used to define the tables described above. The definitions are generally inconsistent and difficult to understand. Currently, these tables are verified by having the design engineer walk through the rules manually to discover any inconsistencies or to test the product by inputting a multitude of option combinations.
It would be advantageous to provide a configuration description language system that gives the user the ability to easily describe a computing system's characteristics and immediately verify the validity of the rules dictating those characteristics. It would further be advantageous to provide a configuration description language system that is can be applied to diverse products and is easily maintained through ease of use and development tool commonality.